//obj ：目标函数 target：目标位置 callback ：回调函数
function animate(obj, target, callback) {
    //先清除以前的定时器，只保留当前一个定时器执行
    clearInterval(obj.timer);
    //设置定时器
    obj.timer = setInterval(function () {
        //步长值 = （目标值 - 当前位置） / 10
        var step = (target - obj.offsetLeft) / 10;
        //如果步长值大于零则向上取整，若小于零则向下取整
        step = step > 0 ? Math.ceil(step) : Math.floor(step);
        //当达到条件时停止定时器
        if (obj.offsetLeft == target) {
            clearInterval(obj.timer);
            //如果存在回调函数，则调用
            if (callback) {
                callback();
            }
        }
        obj.style.left = obj.offsetLeft + step + 'px';
    }, 15);
}